package com.amsp.oa.oademo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.math.BigDecimal;

@Data
@TableName("salary_form")
@ApiModel(description = "职员基本薪资核定表")
public class SalaryForm {
    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("姓名")
    private String name;

    @ApiModelProperty("工号")
    private String employeeId;

    @ApiModelProperty("入职日期")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private LocalDate startDate;

    @ApiModelProperty("拟派部门")
    private String department;

    @ApiModelProperty("拟派职位")
    private String position;

    @ApiModelProperty("试用期基础工资")
    private BigDecimal probationBasicSalary;

    @ApiModelProperty("转正后基础工资")
    private BigDecimal postProbationBasicSalary;

    @ApiModelProperty("试用期技能工资")
    private BigDecimal probationSkillSalary;

    @ApiModelProperty("转正后技能工资")
    private BigDecimal postProbationSkillSalary;

    @ApiModelProperty("试用期岗位工资")
    private BigDecimal probationPositionSalary;

    @ApiModelProperty("转正后岗位工资")
    private BigDecimal postProbationPositionSalary;

    @ApiModelProperty("试用期加班工资")
    private BigDecimal probationOvertimeSalary;

    @ApiModelProperty("转正后加班工资")
    private BigDecimal postProbationOvertimeSalary;

    @ApiModelProperty("试用期特殊说明")
    private String probationSpecialNote;

    @ApiModelProperty("转正后特殊说明")
    private String postProbationSpecialNote;

    @ApiModelProperty("试用期合计月薪")
    private BigDecimal probationTotalSalary;

    @ApiModelProperty("转正后合计月薪")
    private BigDecimal postProbationTotalSalary;

    @ApiModelProperty("薪资面谈人")
    private String salaryInterviewer;

    @ApiModelProperty("人资经办")
    private String hrOperator;

    @ApiModelProperty("用人单位经理")
    private String manager;

    @ApiModelProperty("部长/总监")
    private String director;

    @ApiModelProperty("应征者签名")
    private String applicantSignature;

    @ApiModelProperty("应征者签名日期")
    private LocalDate applicantDate;

    @ApiModelProperty("总裁/董事长签名")
    private String presidentSignature;

    @ApiModelProperty("企业管理部签名")
    private String corporateManagementSignature;

    @ApiModelProperty("总经理签名")
    private String generalManagerSignature;
}